<?php
include_once('inc/functions.inc.php');

if(!isEmpty(getParam('operation'))) {
    
    switch(getParam('operation')) {
        case 'e': {
            fntAcademicoReportesEmpresas($db);
            break;
        }
        case 'r': {
            fntAcademicoReportesReportes($db);
            break;
        }
        case 'b': {
            fntAcademicoReportesBusqueda($db);
            break;
        }
        case 'f': {
            fntAcademicoReportesFacturas($db);
            break;
        }
        case 'p': {
            fntAcademicoReportesPartida($db);
            break;
        } 
        case 'rp': {
            fntAcademicoReportesProveedorGet($db);
            break;
        }
    }
    die();
}

function fntAcademicoReportesEmpresas($db) {
    fntEmpresasDraw($db, "sltAcademicoReportesEmpresas");
    ?>
    <script type="text/javascript">
    $("select[name='sltAcademicoReportesEmpresas']").change( function() {
        fntAcademicoReportesReportes();
    });
    </script>
    <?php
}
function fntAcademicoReportesReportes($db) {
    ?>
    <div style="width: 900px; float: left;">
        <div style="width: 900px; float: left;">&nbsp;</div>
        <div style="width: 900px; float: left;">
            <b>Reportes:</b>
            <select name="sltAcademicoReportesReportes" id="sltAcademicoReportesReportes">
                <option value="b">Listado de Alumnos por Benefactor</option>
            </select>
        </div>
        <div style="width: 900px; float: left;">&nbsp;</div>
    </div>
    <script type="text/javascript">
    $("#sltAcademicoReportesReportes").change( function () {
        fntAcademicoReportesBusqueda();
    });
    </script>
    <?php
}
function fntAcademicoReportesBusqueda($db) {
    
    $intEmpresa = getParam("sltAcademicoReportesEmpresas");
    $strReporte = getParam("sltAcademicoReportesReportes");
    
    if( $strReporte == "b" ) {
        ?>
        <div style="width: 900px; float: left;">
            <div style="width: 900px; float: left;">&nbsp;</div>
            <div  style="width: 900px; float: left;">
                <div style="width: 450px; float: left;">
                    <input type="checkbox" name="chkAcademicoReportesBenefactorAll" value="1"><b>&nbsp;Todos los Benefactores</b>
                    <script type="text/javascript">
                    $("input[name='chkAcademicoReportesBenefactorAll']").click( function() {
                        if( $(this).attr("checked")) {
                            $("input[name='hdnAcademicoReportesProveedor']").val("");
                            $("#divAcademicoReportesProveedor").html("");
                            $("input[name='txtAcademicoReportesProveedor']").hide();
                            $("#divAcademicoReportesProveedor").hide();
                            $("#divAcademicoReportesProveedorCambio").hide();
                        }
                        else {
                            $("input[name='hdnAcademicoReportesProveedor']").val("");
                            $("#divAcademicoReportesProveedor").html("");
                            $("input[name='txtAcademicoReportesProveedor']").val("").show();
                            $("#divAcademicoReportesProveedor").show();
                            $("#divAcademicoReportesProveedorCambio").show();
                        }
                    }); 
                    </script>
                </div>
            </div>
            <div style="width: 100px; float: left;"><b>Benefactor</b></div>
            <div style="width: 20px;  float: left;">
                <div id="divAcademicoReportesProveedorCambio" style="float: left; margin-right: 0.3em; cursor: pointer;" class="ui-icon ui-icon-transferthick-e-w"></div>
            </div>
            <div style="width: 780px; float: left; text-align: left;">
                <input type="hidden" name="hdnAcademicoReportesProveedor" value="" style="width: 350px;" />
                <input type="text" name="txtAcademicoReportesProveedor" value="" style="width: 350px;" />
                <div id="divAcademicoReportesProveedor"></div>
                <script type="text/javascript">
                $("input[name='txtAcademicoReportesProveedor']").autocomplete({
                    source: "admin_academico_reportes_data.php?operation=rp&sltAcademicoReportesEmpresas=<?php print $intEmpresa; ?>",
                    minLength: 1,
                    select: function( event, ui ) {
                        
                        $("input[name='hdnAcademicoReportesProveedor']").val(ui.item.id);
                        $("#divAcademicoReportesProveedor").html(ui.item.value);
                        $(this).hide();
                        $("#divAcademicoReportesProveedor").show();
                        $("#divAcademicoReportesProveedorCambio").show();
                       
                    }
                });
                $("#divAcademicoReportesProveedorCambio").click(function() {
                    $("#divAcademicoReportesProveedor").hide();
                    $("input[name='txtAcademicoReportesProveedor']").show().select();
                    $("input[name='hdnAcademicoReportesProveedor']").val("");
                });
                </script>
            </div>
            <div style="width: 900px; float: left;">&nbsp;</div>
            <div style="width: 900px; float: left; text-align: center"><button type="button" id="btnAcademicoReportesBuscar">Buscar</button></div>
            <div style="width: 900px; float: left;">&nbsp;</div>
        </div>
        <script type="text/javascript">
        $("#btnAcademicoReportesBuscar").button({
            icons: {
                primary: "ui-icon-search"
            }
        }).click( function () {
            fntAcademicoReportesFacturas();
        });
        </script>
        <?php
    }
    elseif( $strReporte == "s" ) {
        
        
    }

}
function fntAcademicoReportesFacturas($db) {
    
    //drawDebug($_POST);
    $intEmpresa = getParam("sltAcademicoReportesEmpresas");
    $strProveedor = getParam("hdnAcademicoReportesProveedor");
    $strFacturasEstado = getParam("radAcademicoReportesFacturasEstado");
    $strWhere = "";
    if( !empty($strProveedor) ) {
        $strWhere .= " AND cllg_benefactor.ID = '{$strProveedor}' ";
    }
	
    
    $strQuery ="SELECT  cllg_student.ID,
                        cllg_student.FIRST_NAME,
                        cllg_student.LAST_NAME,
                        cllg_academico_grados.NOMBRE AS GRADO,
                        cllg_academico_secciones.NOMBRE AS SECCION,
                        IF(cllg_student.GENDER='M', 'Masculino', 'Femenino') AS GENERO
                FROM    cllg_benefactor,
                        cllg_student,
                        cllg_student_benefactor,
                        cllg_academico_estudiantes_asignacion, 
                        cllg_academico_grados,
                        cllg_academico_secciones
                WHERE   cllg_student.ID = cllg_student_benefactor.STUDENT
                AND     cllg_benefactor.ID = cllg_student_benefactor.BENEFACTOR 
                AND     cllg_student.ID = cllg_academico_estudiantes_asignacion.FK_ESTUDIANTE
                AND     cllg_academico_estudiantes_asignacion.FK_GRADO = cllg_academico_grados.ID
                AND     cllg_academico_estudiantes_asignacion.FK_SECCION = cllg_academico_secciones.ID
                
                {$strWhere} ";
    //drawDebug($strQuery);
	
	
	
    $qTMP = $db->query($strQuery);
    $intNumRows = $db->num_rows;
	
    ?>
    
    <div style="width: 900px; float: left;">
    <div style="width: 900px; float: left">&nbsp;</div>
    <div style="width: 900px; float: left;">
        <div style="width: 100px; height: 40px; float: left; text-align: center; border-bottom: 1px solid black;"><b>Carnet</b></div>
        <div style="width: 400px; height: 40px; float: left; text-align: center; border-bottom: 1px solid black;"><b>Nombre y Apellido del Alumno</b></div>
        <div style="width: 100px; height: 40px; float: left; text-align: center; border-bottom: 1px solid black;"><b>Fecha de Nacimiento</b></div>
        <div style="width: 100px; height: 40px; float: left; text-align: center; border-bottom: 1px solid black;"><b>Grado</b></div>
        <div style="width: 100px; height: 40px; float: left; text-align: right; border-bottom: 1px solid black;"><b>Seccion</b></div>
        <div style="width: 100px; height: 40px; float: left; text-align: center; border-bottom: 1px solid black;"><b>Genero</b></div>
    </div>
    <?php
    if( $intNumRows > 0 ) {
        ?>
        <div style="width: 900px; height: 150px; overflow: auto; float: left;">
        <?php
        while ( $rTMP = $db->fetch_array($qTMP) ) { 
            ?>
            <div style="width: 100px; height: 30px; float: left; text-align: center;"><?php print $rTMP["ID"]; ?></div>
            <div style="width: 400px; height: 30px; float: left; text-align: center;"><?php print htmlentities($rTMP["FIRST_NAME"]." ".$rTMP["LAST_NAME"]); ?></div>
            <div style="width: 100px; height: 30px; float: left; text-align: center;"><?php print $rTMP["BIRTHDATE"]; ?></div>
            <div style="width: 100px; height: 30px; float: left; text-align: center;"><?php print $rTMP["GRADO"]; ?></div>
            <div style="width: 100px; height: 30px; float: left; text-align: center;"><?php print $rTMP["SECCION"]; ?></div>
            <div style="width: 100px; height: 30px; float: left; text-align: center;"><?php print $rTMP["GENERO"]; ?></div>
            <?php    
        }
        ?>
        </div>
        <div style="width: 900px; height: 60px; float: left;">&nbsp;</div>
        <!--<div style="width: 900px; height: 30px; text-align: center"><button type="button" id="btnAcademicoReportesGenerar">Imprimir</button></div>
        <script type="text/javascript">
        $(function() {
            $("#btnAcademicoReportesGenerar").button({
                icons: {
                    primary: "ui-icon-print"
                }
            }).click( function () {
                window.open("admin_cuentas_x_pagar_reportes_print.php?sltAcademicoReportesEmpresas=<?php print $intEmpresa; ?>&hdnAcademicoReportesProveedor=<?php print $strProveedor; ?>&radAcademicoReportesFacturasEstado=<?php print $strFacturasEstado; ?>", "_blank");
            });
        });
        </script>-->
        <?php
        
    }
    else {
        ?>
        <div style="width: 900px; float: left;">
            <div class="ui-widget" style="width: 800px; height: auto;" align="center">
                <div class="ui-state-highlight ui-corner-all" style="margin-top: 0px; padding: 0pt 0.7em; height: auto; width: 500px;"> 
                    <span class="ui-icon ui-icon-info" style="float: left; margin-right: 0.3em;"></span>
                    No se encontraron registros.
               </div>
            </div>
        </div>
        <?php        
    }
    $db->free_result($qTMP);
    ?>
    </div>
    <?php    
    
}
function fntAcademicoReportesGrabar($db) {

    //drawDebug($_POST);
    $intEmpresa = getParam("sltAcademicoReportesEmpresas");
    $strSolicitudes = "";
    while( $arrPost = each($_POST) ) {
        
        $arrExplode = explode("_", $arrPost["key"]);
        if( $arrExplode[0] == "radAcademicoReportesID" ) {
            
            $sinValorProgramar = getParam("txtAcademicoReportesValorProgramar_{$arrExplode[1]}");
            $intProveedor = getParam("radAcademicoReportesProveedor_{$arrExplode[1]}");
            $strNombre = "";
            $strQuery = "SELECT * 
                 FROM   cllg_cp_proveedor 
                 WHERE  NIT = '{$intProveedor}' 
                 AND    FK_EMPRESA = '{$intEmpresa}'";
            $qTMP = $db->query($strQuery);
            while ( $rTMP = $db->fetch_array($qTMP) ) {
                $strNombre = $rTMP["RAZON_SOCIAL"];    
            }
            $db->free_result($qTMP);
            
            $db->query("INSERT INTO cllg_bnc_docto_solicitud 
                        (FECHA, MONTO, TIPO, NOMBRE, CONCEPTO, ESTADO) 
                        VALUES 
                        (NOW(), '{$sinValorProgramar}', '1', '{$strNombre}', 'Pago a proveedor', '2')");
            $intSolicitudID = mysql_insert_id ( $db->link_id );
            
            $strQuery = "INSERT INTO cllg_cp_pago
                        (FECHA, MONTO, FK_FACTURA, CONCEPTO, FK_SOLICITUD, ESTADO)
                        VALUES
                        (NOW(),'{$sinValorProgramar}','{$arrExplode[1]}','','{$intSolicitudID}','2')";
            $db->query($strQuery);
            
            $sinSaldo = 0;
            $strQuery = "SELECT SUM(MONTO) AS SALDO FROM cllg_cp_pago WHERE FK_FACTURA = '{$arrExplode[1]}' AND ESTADO IN(1,2)";
            $qTMP = $db->query($strQuery);
            while ( $rTMP = $db->fetch_array($qTMP) ) {
                $sinSaldo = $rTMP["SALDO"];    
            }
            $db->free_result($qTMP);
            
            $strQuery = "UPDATE cllg_cp_factura SET SALDO_ACTUAL = SALDO_ANTERIOR - {$sinSaldo} WHERE ID = '{$arrExplode[1]}'";
            $db->query($strQuery);
            
            $strSolicitudes .= (empty($strSolicitudes)) ? "" : ", ";            
            $strSolicitudes .= $intSolicitudID;            
            
        }
        
    }
    
    if( !empty($strSolicitudes) ) {
        ?>
        <div class="ui-widget" style="border: 0px solid white; width: 900px; height: auto; vertical-align: bottom;" align="center">
           <div class="ui-state-highlight ui-corner-all" style="margin-top: 0px; padding: 0pt 0.7em; height: auto; width: 220px;"> 
                <span class="ui-icon ui-icon-info" style="float: left; margin-right: 0.3em;"></span>
                Solicitudes de cheques No. <?php print $strSolicitudes; ?>
           </div>
        </div>
        <br>
        <?php
    }
    
    die();
    $intEmpresa = getParam("sltAcademicoReportesEmpresas");
    $intFacturaID = getParam("radAcademicoReportesID");
    $valor = getParam("hdnAcademicoReportesValor");
    $arrfecha = explode("-", getParam("hdnAcademicoReportesFecha"));
    $fecha = $arrfecha[2]."-".$arrfecha[1]."-".$arrfecha[0];
    $concepto = getParam("hdnAcademicoReportesConcepto");
    
    $strQuery = "SELECT * 
                 FROM   cllg_contab_ciclo 
                 WHERE  activo = '1' 
                 AND    fecha_inicio <= '{$fecha}' 
                 AND    fecha_fin >= '{$fecha}'
                 AND    total_activo > 0 
                 AND    total_pasivo > 0
                 AND    fk_empresa = '{$intEmpresa}'";
    $qTMP = $db->query($strQuery);
    $intCicloCerrado = $db->num_rows;
    $db->free_result($qTMP);
    
    $strQuery = "SELECT * 
                 FROM   cllg_contab_ciclo 
                 WHERE  activo = '1' 
                 AND    fecha_inicio <= '{$fecha}' 
                 AND    fecha_fin >= '{$fecha}'
                 AND    fk_empresa = '{$intEmpresa}'";
    $qTMP = $db->query($strQuery);
    $intCicloCorrecto = $db->num_rows;
    $db->free_result($qTMP);
    
    if( $intCicloCerrado > 0 ) {
        
        ?>
        <div class="ui-widget" style="border: 0px solid white; width: 800px; height: auto; vertical-align: bottom;" align="center">
            <div class="ui-state-error ui-corner-all" style="margin-top: 0px; padding: 0pt 0.7em; height: auto; width: 450px;"> 
                <p><span class="ui-icon ui-icon-alert" style="float: left; margin-right: 0.3em;"></span>
                No se puede ingresar partida en una fecha ya cerrada.</p>
           </div>
        </div>
        <br>
        <?php
        
    }
    else if( $intCicloCorrecto == 0 ) {
        
        ?>
        <div class="ui-widget" style="border: 0px solid white; width: 800px; height: auto; vertical-align: bottom;" align="center">
            <div class="ui-state-error ui-corner-all" style="margin-top: 0px; padding: 0pt 0.7em; height: auto; width: 450px;"> 
                <span class="ui-icon ui-icon-alert" style="float: left; margin-right: 0.3em;"></span>
                La fecha de la partida no esta configurada.
           </div>
        </div>
        <br>
        <?php
        
    }
    else {
    
        $strQuery = "SELECT * FROM cllg_contab_ciclo WHERE activo = '1' AND fk_empresa = '{$intEmpresa}'";
        $qTMP = $db->query($strQuery);
        $intNumRows = $db->num_rows;
        $rTMP = $db->fetch_array($qTMP);
        $intCiclo = $rTMP["codigo"];
        $db->free_result($qTMP);
        if( $intNumRows > 0 ) {
            
            $strQuery = "INSERT INTO cllg_contab_ajuste 
                         (id, fecha, monto, ciclo, descripcion)
                         VALUES
                         (NULL, '{$fecha}', {$valor}, '{$intCiclo}', '{$concepto}')";
            $db->query($strQuery);                     
            $intID = mysql_insert_id ( $db->link_id );
            
            if( $intID > 0 ) {
                
                while ( $arrPost = each($_POST) ) {
                    
                    $arrExplode = explode("_", $arrPost["key"]);
                    
                    if( $arrExplode[0] == "hdnCuenta" && $arrPost["value"] > 0 ) {
                        
                        $debe = getParam("txtDebe_".$arrExplode[1]);
                        $haber = getParam("txtHaber_".$arrExplode[1]);
                        if( $debe > 0 && $haber == 0 ) {
                            $monto = $debe;
                            $debe = 1;
                            $haber = 0;
                        }
                        else if( $debe == 0 && $haber > 0 ) {
                            $monto = $haber;
                            $debe = 0;
                            $haber = 1;
                        }
                        $strQuery = "INSERT INTO cllg_contab_cuenta_ajuste 
                                     (cuenta, debe, haber, monto, ajuste)
                                     VALUES
                                     ('{$arrPost["value"]}', '{$debe}', '{$haber}', '{$monto}', '{$intID}')";
                        $db->query($strQuery);
                        
                    }                    
                    
                }
                
                $db->query("UPDATE cllg_cp_factura SET ESTADO = '2', FK_AJUSTE = '{$intID}' WHERE ID = '{$intFacturaID}'");
                ?>
                <div class="ui-widget" style="border: 0px solid white; width: 900px; height: auto; vertical-align: bottom;" align="center">
                   <div class="ui-state-highlight ui-corner-all" style="margin-top: 0px; padding: 0pt 0.7em; height: auto; width: 220px;"> 
                        <span class="ui-icon ui-icon-info" style="float: left; margin-right: 0.3em;"></span>
                        Partida ingresada No. <?php print $intID; ?>
                   </div>
                </div>
                <br>
                <script type="text/javascript" language="javascript">
                fntAcademicoReportesFacturas();
                var objInterface = $("#divAcademicoReportesPartida");
                objInterface.html("");
                </script>
                <?php 
                
            }
        }
    }
            
}
function mround($number, $precision=0) { 
    
    $precision = ($precision == 0 ? 1 : $precision);    
    $pow = pow(10, $precision); 
    
    $ceil = ceil($number * $pow)/$pow; 
    $floor = floor($number * $pow)/$pow; 
    
    $pow = pow(10, $precision+1); 
    
    $diffCeil     = $pow*($ceil-$number); 
    $diffFloor     = $pow*($number-$floor)+($number < 0 ? -1 : 1); 
    
    if($diffCeil >= $diffFloor) return $floor; 
    else return $ceil; 
}
function fntAcademicoReportesProveedorGet($db) {
        
    $arrResult = array();
    $term = getParam("term");
    $strQuery = "SELECT * FROM cllg_benefactor
                 WHERE (ID LIKE '%{$term}%' OR RAZON_SOCIAL LIKE '%{$term}%')";
    $qTMP = $db->query($strQuery);
        
    if( $rTMP = $db->fetch_array($qTMP) ) {

        do {
            $arrTMP =  array();
            $arrTMP["id"] = $rTMP["ID"];
            $arrTMP["value"] = $rTMP["ID"]." - ".$rTMP["RAZON_SOCIAL"];
            
            array_push($arrResult,$arrTMP);
            
        } while ($rTMP = $db->fetch_array($qTMP));
        
    }
    $db->free_result($rTMP);
    
    print json_encode($arrResult);
}
?>